package main.onebody.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 监测点位草稿
 * </p>
 *
 * @author H
 * @since 2022-12-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("alarm_indicator_draft")
@ApiModel(value="AlarmIndicatorDraftDO对象", description="监测点位草稿")
public class AlarmIndicatorDraftDO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    private String id;

    @ApiModelProperty(value = "点位名称")
    private String name;

    @ApiModelProperty(value = "点位位号")
    private String num;

    @ApiModelProperty(value = "点位系统位号")
    private String sysNum;

    @ApiModelProperty(value = "所属企业")
    private String orgCode;

    @ApiModelProperty(value = "设备设施id")
    private String poiId;

    @ApiModelProperty(value = "设施设施类型")
    private String poiType;

    @ApiModelProperty(value = "监测项")
    private String indicatorType;

    @ApiModelProperty(value = "监测因子")
    private String indicatorFactor;

    @ApiModelProperty(value = "参数单位")
    private String indicatorUnit;

    @ApiModelProperty(value = "状态0：待提交，1：待审核，2：审核通过，3：审核不通过")
    private Boolean status;

    @ApiModelProperty(value = "是否上报 0不上报， 1上报")
    private Boolean reportStatus;

    @ApiModelProperty(value = "运行状态 0停用， 1,在用")
    private Boolean runningStatus;

    @ApiModelProperty(value = "量程上限")
    private Double rangeTop;

    @ApiModelProperty(value = "量程下限")
    private Double rangeBottom;

    @ApiModelProperty(value = "规格型号")
    private String norms;

    @ApiModelProperty(value = "采集频率")
    private Integer collectRate;

    @ApiModelProperty(value = "采集器id")
    private String collectorId;

    @ApiModelProperty(value = "正常阈值上限")
    private Double normalThresholdTop;

    @ApiModelProperty(value = "正常阈值下限")
    private Double normalThresholdBottom;

    @ApiModelProperty(value = "厂家")
    private String manufacturer;

    @ApiModelProperty(value = "创建人")
    private Long cuserId;

    @ApiModelProperty(value = "创建时间")
    private Date ctime;

    @ApiModelProperty(value = "更新人")
    private Long uuserId;

    @ApiModelProperty(value = "更新时间")
    private Date utime;

    @ApiModelProperty(value = "是否删除【1:已删除，0:未删除】")
    private Boolean deleteStatus;

    @ApiModelProperty(value = "序号")
    private Integer sortId;

    @ApiModelProperty(value = "是否联锁报警 0否 1是")
    private Boolean relateAlarm;

    @ApiModelProperty(value = "是否停用 0使用 1停用")
    private Boolean disabled;

    @ApiModelProperty(value = "指标编码 设备编码(17位)+指标类型编码(2位)+3位流水号")
    private String targetCode;

    @ApiModelProperty(value = "企业的网关按照企业编码(9位）+2位流水号编码")
    private String gatewayCode;

    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    /**
     * 横坐标
     */
    @ApiModelProperty(value = "横坐标", name = "x_2d")
    @JsonProperty(value = "x_2d")
    @TableField("x_2d")
    private String abscissa;
    /**
     * 纵坐标
     */
    @ApiModelProperty(value = "纵坐标", name = "y_2d")
    @JsonProperty(value = "y_2d")
    @TableField("y_2d")
    private String ordinate;
    /**
     * 经度
     */
    @ApiModelProperty(value = "三维经度", name = "x_3d")
    @JsonProperty(value = "x_3d")
    @TableField("x_3d")
    private String longitude;
    /**
     * 维度
     */
    @ApiModelProperty(value = "三维维度", name = "y_3d")
    @JsonProperty(value = "y_3d")
    @TableField("y_3d")
    private String latitude;
    /**
     * 海拔
     */
    @ApiModelProperty(value = "三维海拔", name = "z_3d")
    @JsonProperty(value = "z_3d")
    @TableField("z_3d")
    private String height;


}
